package net.risesoft.risebi.collection.web;

import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.lang.StringUtils;
import org.apache.struts2.ServletActionContext;

public class BaseListAction extends BaseAction {

	/**
	 * 页码栏页号参数都由displaytag生成，为了获取这个页号，必须知道它的参数名，
	 * 这是displaytag根据id属性生成的，要得到它必须使用displaytag库中的API。 以下是一个可以根据id来获得参数名的函数。
	 * 有了参数名，就可以通过request.getparameter来获得页码
	 * 
	 * @param id
	 * @return
	 */
	protected String getPageParamName(String id) {
		return new org.displaytag.util.ParamEncoder(id)
				.encodeParameterName(org.displaytag.tags.TableTagParameters.PARAMETER_PAGE);
	}

	public int getPageNo(String id) {
		String pageIndexName = this.getPageParamName(id);
		HttpServletRequest request = ServletActionContext.getRequest();
		String pageIndex = request.getParameter(pageIndexName);
		return StringUtils.isBlank(pageIndex) ? 0 : Integer.parseInt(pageIndex);
	}

	protected int resultSize;
	protected int pageSize = 10;

	public int getPageSize() {
		return pageSize;
	}

	public void setPageSize(int pageSize) {
		this.pageSize = pageSize;
	}

	public int getResultSize() {
		return resultSize;
	}

	public void setResultSize(int resultSize) {
		this.resultSize = resultSize;
	}

	protected boolean checkAll = false;
	protected String rowsCheck;
	protected List<String> rowCheck;

	public List<String> getRowCheck() {
		return rowCheck;
	}

	public void setRowCheck(List<String> rowCheck) {
		this.rowCheck = rowCheck;
	}

	public boolean isCheckAll() {
		return checkAll;
	}

	public void setCheckAll(boolean checkAll) {
		this.checkAll = checkAll;
	}

	public String getRowsCheck() {
		return rowsCheck;
	}

	public void setRowsCheck(String rowsCheck) {
		this.rowsCheck = rowsCheck;
	}

}
